package com.css.fxfzypg.modules.surveytaskmanage.service;

import com.css.fxfzypg.modules.group.vo.GroupVo;
import com.css.fxfzypg.modules.surveytaskmanage.entity.FieldSurveyTaskEntity;
import com.css.fxfzypg.modules.surveytaskmanage.vo.FieldSurveyTaskGroupVo;
import com.css.fxfzypg.modules.surveytaskmanage.vo.FieldSurveyTaskVo;
import com.css.fxfzypg.modules.surveytaskmanage.vo.FieldSurveyVo;
import com.css.fxfzypg.modules.surveytaskmanage.vo.TaskVo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface FieldSurveyTaskService {


    String saveTask(FieldSurveyTaskVo fieldSurveyTaskVo);

    void saveSubTask(FieldSurveyTaskEntity subTask);

    Map<String,Object> getPage( TaskVo taskVo, int curPage, int pageSize);

    List<FieldSurveyTaskEntity> getSubTask(String parentTaskId);

    FieldSurveyTaskGroupVo findById(String taskId);

    void updateTask(FieldSurveyTaskEntity fieldSurveyTaskEntity);

    Boolean whetherHaveSubTask(List<String> list);

    void completeTask(List<String> ids);

    void assignGroup(FieldSurveyTaskEntity fieldSurveyTaskEntity);

    void deleteTask(List<String> list);

    String getSubTaskDistrict(List<String> taskDistricts);

    Map<String, Object> getAppPage(HttpServletRequest request, TaskVo taskVo, int curPage, int pageSize);

    String getSubTaskCode(String taskNum);
}
